Jump to content

Tom Wellige

Root Moderator
  • Posts

    4,483
  • Joined

  • Last visited

  • Days Won

    120

Community Answers

  1. Tom Wellige's post in Begrenzung der Namenstasten (250) erhöhen was marked as the answer   
    Im SwyxIt! Classic ist die Anzahl der möglichen Namenstasten in einer Skin tatsächlich auf 250 begrenzt. Das ist hart im Produkt verdrahtet und lässt sich nicht von aussen ändern.
     
  2. Tom Wellige's post in Benutzer nur freitags im Ring was marked as the answer   
    Die einfachste Möglichkeit wäre zwei Gruppen anlegen, ein ohne den Benutzer und eine mit dem Benutzer. 
     
    Im Call Routing ermittelst Du den Wochentag, und stellst dann mit dem "Durchstellen" Block entweder auf die eine oder andere Gruppe zu.
     
    Mit der VBSkript Weekday Funktion kannst Du den Wochentag ermitteln. Das kannst Du ganz einfach in einem "Variable auswerten" Block machen:
     
    Weekday(Now) = 6  

     

     
     
     
  3. Tom Wellige's post in Anrufbeantworter Gespräch per Mail versenden was marked as the answer   
    Hallo,
     
    dazu kannst Du den "Voice Box" Block im GSE verwenden:
     

     
    Dort musst Du die gewünschte Ansage und auch die EMail Adresse hinterlegen, an die die Nachricht geschickt werden soll. Zusätzlich kann sie auch im SwyxIt! Client (Neu oder Classic) abgehört werden, ggf. auch mit Transkription).
     
    Den SMTP Mail Server konfigurierst Du in den SwyxWare Einstellungen. Das kannst Du entweder in der 
    SwyxWare Administration
    https://help.enreach.com/cpe/14.20/Administration/Swyx/de-DE/#page/help/chap_serverconfiguration.10.18.html oder im
    Swyx Control Center
    https://help.enreach.com/controlcenter/14.20/web/Swyx/de-DE/#page/help/chap_serverconfiguration.06.14.html machen.
     
     
  4. Tom Wellige's post in Skript implementieren was marked as the answer   
    Ja, so kannst Du das anwenden.
     
     
    Dann schau mal ganz links in das Info Fenster. Dort findest Du hinter einem roten Symbol den Grund angegeben, weswegen der GSE gerade der MEinung ist, dass Deine Regel nicht in Ordnung ist.
     
  5. Tom Wellige's post in Manuelle Ansage für einen Benutzer oder Gruppe importieren und einrichten was marked as the answer   
    Hallo zuächst einmal ist es wichtig, dass die Du Datei im richtigen _Audioformat gespeichert hast. Eine .WAV Datei ist eine Art Container, der verschiedene Formate enthalten kann.
    Für alle Ansagen innerhalb der SwyxWare brauchst Du:
    16kHz Abtastrate 16bit Datenbreite Mono Eine solche Datei kannst Du z.B. über den Call Routing Manager (den Du über den SwyxIt! Client des Benutzer öffnest, oder über die SwyxWare Administration für einen beliebigen Benutzer) hinterlegen.
     
    Dazu legst Du eine Call Routing Regel an, welche eine "Ansage abspielen" Aktion enthält. In der Konfiguration der Aktion kannst Du dort wo Du den Namen der Ansage eintragen kannst auf den "..." Schalter drücken, um Deine .WAV Datei auf Deinem Rechner auszuwählen. Diese wird dann auf den Swyx Server hochgeladen und steht fortan jederzeit im Call Routing zur Verfügung.
     
  6. Tom Wellige's post in SwyxON - jeder 1. Samstag im Monat - Wie bilde ich das im CRM ab? was marked as the answer   
    Dann erkläre ich erstmal wie die Abfrage funtioniert:
     
    if Day(Now) <= 7 then  
    Ist der aktuelle Tag zwischen dem 1. und 7. Tag des Monats, d.h. befinden wir uns in der ersten Woche?
     
    if Weekday(Now, 1) = 7 then  
    Ist der aktuelle Wochentag ein Samstag?
    Der zweite Parameter der Funktion legt fest, dass der erste Tag Woche Sonntag ist.
    Damit ist Sonntag = 1, Montag = 2, Dienstahg = 3, usw, und Samstag = 7.
     
     
    Es wird also erst geschaut, ob wir aktuell in der ersten Woche des Monats sind, und dann, ob der aktuelle Tag ein Samstag ist.
     
    Wenn Du überprüfen willst, ob Du Dich am 2. Samstag im Monat befindest, musst Du die erste Abfrage etwas anpassen:
     
    if (Day(Now) >= 8) and (Day(Now) <= 14) then  
     
  7. Tom Wellige's post in Button zum aktivieren/deaktivieren einer bestimmten CR Regel was marked as the answer   
    Hi,
     
    das geht leider nicht. Der Call Routing Manager ist defacto der einzige, der Call Routing Regeln aktivieren, deaktivieren oder bearbeiten kann. Das lässt sich "von aussen" nicht beeinflussen.
     
    Der Grund dafür liegt in der Struktur des Call Routings, wenn Du Änderungen im Call Routing Manager machst (egal was), dann wird aus dem dann neuen resultierenden Regelwerk eine neue "callrouting.vbs" Datei generiert. Diese Datei wird für jeden kommenden Ruf einen Benutzer gestartet.
     
    Der Call Routing Manager ist derzeit der einzige Teil der SwyxWare, der diese "callrouting.vbs" Datei generieren kann.
     
    Du könntest aber einen anderen Ansatz wählen: in jeder Call Routing Regel einen Schalter ganz an den Anfang setzen, den Du nicht nur innerhalb des Call Routings abfragen/ändernn kannst, sondern auch "von aussen".
     
    Ich denke hier an Persistente Variablen (PV). Das sind Variablen, die ihren Inhalt dauerhaft (persisten) speichern (in einer Datenbank). Bei den PVs findest Du ein Beispiel für eine Nachtschaltung. Das ist nicht anderes als ein einfacher ein-/ausschalter. 
     
    Zu dem Nachtschalter Beispiel gehört auch eine kleine "WebExtension", die Du in die Skin des Clients einfügen kannst. Sie zeiugt den aktuellen Status der Nachtschaltung, und per Mausklick kann der Status auch umgeschaltet werden.
     
    Damit könntest Du Dir für alle Regeln die Du schaltbar machen möchtest eine entsprechende Persistente Variable mit WebExtension anlegen. Im jeder Call Routing Regel fragst Du wie im Nachtschaltungs Beispiel einfach den Status ab. Wenn eingeschaltet, geht es in der Regel weiter, wenn ausgeschaltet verlässt Du die Regel über "Regel übersprungen".
     
    Das ist mit ein klein wenig Aufwand beim Einrichten verbunden, ist danach aber sehr komfortabel in der Handhabung 🙂
     
     
  8. Tom Wellige's post in Play MP3 from the Internet was marked as the answer   
    No, thats not possible. As a user you only have access to your own files, but not to files of others. Therefore you also can't store/replace files of of users.
     
    But what you could do the following:
     
    - create a call routing for user 300 (the one that should get a new announcement)
    - this call routing identifies you, 200, and routes you into a special call routing. all other calls to this user use the normal call routing.
    - with the special call routing you can record a new annoucement and get it saved (stored into the database)
    - as this is the call routing of user 300 the file is stored into the user space/scope of user 300
    - the standard call routing of user 300 can now make use of the new announcement
     
    Some time ago wrote a small blog articles describing exactly this use case:
    #18: Record and replace Announcements  
  9. Tom Wellige's post in Gespräch an mehrere Gruppen weiterleiten was marked as the answer   
    Du bist auf dem richtigen Weg. Du kannst in den Durchstellen, Follow Me und Schleife Blöcken grundsätzlich einen Parallelruf zu mehrere Ziele gleichzeitig auslösen.
     
    Dafür gibst Du die jeweiligen Nummern (egal ob interner Benutzer oder Gruppe, oder externes Ziel)  per " ; " (Semikolon) separiert an, nicht per Komma.
     
  10. Tom Wellige's post in Swyx Script getrennt nach Feiertagen und 24./31.12. mit separaten Ansagetexten was marked as the answer   
    Hallo Kai,
     
    mit einem "Datum/Uhrzeit" Block könntest Du jeweils auf eine Zeitspanne vom 24.12.2024 bis 24.12.2024 bzw. dem 31. prüfen. Hierbei hast Du allerdings das Jahr fest verdrahtet da mit drin stehen und müsstest das Call Routing jedes Jahr anpassen.
     
    Besser ist es, nur auf den Tag und Monat zu prüfen. Das geht mit dem "Variable auswerten" Block.
     

     


    EDIT: siehe meinen Post weiter unten!
     
    Hier die obige Regel als .rse Datei. Einfach im GSE über "Datei | Importieren..." importieren.
     
    Feiertag.rse
     
     
    Ich habe vor vor einiger Zeit mal etwas zum Thema Datum bzw. Zeitspanne dynamisch und nicht fest verdrahtet prüfen zu können geschrieben. Das ist evtl. auch interessant für Dich zu lesen:
    Be more flexible on dates  
     
  11. Tom Wellige's post in Call Routing - Ansage statt Freizeichen was marked as the answer   
    Hallo Tom,

    Du kannst Dir einfach eine kleine Regel mit dem Grafischen Skript Editor machen, die den Ruf per Durchstellen Block auf Deine Gruppe zustellt:
     

     
     

     
    Unter (1) trägst Du die Nummer Deiner Gruppe ein.
    Unter (2) wählst Du die Ansage/Musik aus, die der Anrufer hören soll, während es in der Gruppe klingelt.
     
    Du musst hierbei allerdings beachten, dass der Ruf vom Call Routing (d.h. Swyx Server) angenommen wird, damit die Ansage abgespielt werden kann. Der Ruf wird also automatisch verbunden, obwohl der Anrufer noch mit keinem Menschen verbunden ist. Das bedeutet z.B. dass der Anrufer ab sofort für den Anruf bezahlt, und nicht erstt ab dem Augenblick, an dem irgendein Mensch den Höhrer abnimmt.
     
  12. Tom Wellige's post in Statusabfrage von einzelnen Usern mit Variable was marked as the answer   
    Hallo Marcel, 
     
    hiermit solltest Du weiter kommen:
    PBXCall.CalledPartyNumber  
  13. Tom Wellige's post in Feiertage abfragen was marked as the answer   
    Hallo Fredy,
     
    ja, sowas gibt es fix und fertig:
    https://www.swyxforum.com/vbscript-function-collection/functions/ispublicholidayde-r14/  
    Der Link oben auf der Seite erklärt wie Du diese Funktion in Dein Call Routing bekommst und einfach mittels "Variable auswerten" Block aufrufen kannst.
     
     
     
  14. Tom Wellige's post in Swyx Voicemail E-Mail wird nicht versand was marked as the answer   
    Hallo Simon,
     
    die globale Variable "g_resStandardVoicemailSubject" gibt es noch und die kann auch problemlos in eigenen Skripten benutzt werden.
     
    Die andere globale Variable "g_resStandardVoicemailBody" hingegen gibt es nicht mehr. Die mit SwyxWare 13.27 (Einführung des Gruppen Call Routings und der VoiceBox als Erweiterung der Voicemail) entfallen. Es gibt auch keinen 1 zu 1 Ersatz für dieseVariable.
     
    Statt dessen verwendent die Voicebox/Voicemail Funktionalität folgende Logik um den Body einer Voicemail zu füllen.
     
    If (g_bIsGroupContext) Then resVoiceMessage = PBXScript.GetString(115, CStr(PBXCall.CalledPartyNumber), CStr(PBXCall.VoiceMessageId)) Else resVoiceMessage = PBXScript.GetString(104, CStr(PBXCall.VoiceMessageId)) End If resStandardVoicemailBody = PBXScript.GetString(103,Extension()) + vbLF + vbLF + g_resCallBack + g_resEmailReply + vbLF + vbLF + resVoiceMessage  
    Die Variable "resStandardVoicemailBody" ist eine lokale Variable innerhalb der Voicebox/Voicemail Funktionalität, auf die Du in Deinem eigenen Call Routing keinen Zugriff hast.
     
    Du könntest Dir allerdings einen "Skript Code einfügen" Block vor Deinen "EMail" Block setzen und dort eine eigene Variable mittels "Dim" anlegen und wie oben gezeigt mit Inhalt füllen.
     
    Oder Du verwendest gleich den "Voicebox" Block, dann hast Du damit gar nichts mehr zu tun,
     
  15. Tom Wellige's post in Blacklist für unerwünschte Anrufer was marked as the answer   
    Hier ist noch einmal das Thema "Black/White Listing" erklärt:
    This arctile explains again the topic "black/white listing":
     
    https://www.swyxforum.com/blogs/entry/100-21-the-world-isnt-black-white-or-is-it/
     
  16. Tom Wellige's post in Archive: Number Blocking was marked as the answer   
    Hier ist noch einmal das Thema "Black/White Listing" erklärt:
    This arctile explains again the topic "black/white listing":
     
    https://www.swyxforum.com/blogs/entry/100-21-the-world-isnt-black-white-or-is-it/
     
  17. Tom Wellige's post in Call Routing auf mehrere Benutzer/Gruppen übertragen was marked as the answer   
    Hallo Josh,
     
    genau das ist derzeit der Weg. Man kann entweder EINE einzelne GSE Regel "von Hand" (über den von Dir beschriebenen Weg) auf andere Benutzer übertragen, oder das KOMPLETTE Regelwerk eines Benutzer auf eine beliebige Anzahl anderer Benutzer.
     
    Etwas mehr in Detail ist das hier beschrieben:
    https://www.swyxforum.com/blogs/entry/11-4-take-me-to-your-leader/  
    Es gibt auch eine Möglichkeit einer globalen "PreProcessing" Regel. Das ist eine GSE Regel mit dem Namen "PreProcessing" die man global für alle Benutzer hinterlegen kann, und die VOR dem Regelwerk eines Benutzer bestartet wird. Ein Benutzer hat hier keinen Einfluss drauf.
     
    Da eine solche Regel dann aber für ALLE Rufe auf ALLE Benutzer gestartet wird, sollte sie vorher gut getestet worden sein. Wenn da etwas drin schief läuft, läuft das dann für ALLE Anrufe in der SwyxWare schief und niemand ist mehr erreichbar.
     
    Etwas mehr Hintergrund dazu gibt findest Du hier:
    https://www.swyxforum.com/topic/4350-externen-anrufer-blockieren-preprocessing/  
     
    PS: nicht wundern, ich habe Deine Frage in das "Call Routing" Forum verschoben.
  18. Tom Wellige's post in Swyx 13.29 - Warteschleifenmusik beginnt immer am Anfang wenn Anruf gehalten wird was marked as the answer   
    Der Registry Key ist aus der SwyxWare entfernt worden, weil diese Funktion an anderer Stelle zu Problemen geführt hat.
    Es gibt also leider keine Möglichkeit das alte Verhalten mit einem Registry Key wieder herzustellen.
     
  19. Tom Wellige's post in DTMF Menü - Fehler wenn Nummern umgeleitet sind. was marked as the answer   
    Angenommen ich drücke in Deinem Call Routing die "1" und lande dann in einem Durchstellen Block. Stellt dieser dann direkt auf einen Benutzer zu, oder auf eine Benutzergruppe?
     
    Wenn Du willst, dass das Umleitungen respektiert werden, wenn Du mittels Durchstellen Block auf einen Benutzer zustellst, musst Du auf der Parameter Seite des Blocks ganz unten "mit dem Call Routing des Ziels fortfahren" aktivieren.
     
    Wenn auf eine Gruppe zugestellt wird, dann kannst Du der Gruppe bei Bedarf auch ein Call Routing geben.
     
  20. Tom Wellige's post in Standard Skin auf Version 14 falsch was marked as the answer   
    Hallo,
     
    das Swyx Forum ist kein offizielles Enreach Support Forum. Daher müüstest Du Dich mit Fehlermeldungen an Deinen betreuenden Partner, Deinen Distributor oder den Enreach Support wenden.
     
    Du kannst das auch in die Enreach Community schreiben, sofern Du Enreach Partner bist.
     
  21. Tom Wellige's post in Call Routing - Anrufer nach Beschreibung weiterleiten was marked as the answer   
    Vom Call Routing aus kommst Du nur direkt an 
    PBXCall.CallingPartyName PBXCall.CallingPartyNumber ran, wobei CallingPartyName ggf. durch das globale Telefonbuch gefüllt wurde.
     
    Es gibt tatsächlich eine API, mit der Du an das globale Telefonbuch heran kommst, die Config Data Store API (CDS). Mit der solltest Du auch an das Beschreibungsfeld kommen. Da müüstest Dir Dir dann aber einen Wrapper selbst bauen, der in Richtung des Call Routings eine COM Schnittstelle zur Verfügung stellt, auf die Du dann mit VBScript zugreifen kannst.
     
    Einen Ansatz dazu findest Du neben der Doku im CDS API Paket hier:
    CDS User Status  
    Auf der CDS API basiert auch das SwyxWare Powershell Modul auf.
     
    Einen Ansatz hierfür findest Du in diesem Post:
    Powershell Telefonbuch Export ohne Builtin User und Gruppen ? Wenn Du ein PowerShell Script hast, kannst Du das vom Call Routing aus einfach über eine der beiden folgenden VBScript Funktionen starten:
    LaunchCmd LaunchCmdEx Bitte beachte hier jeweils den Link auf "Introduction" direkt über dem VBScript Code.
     
     
     
    Du kannst natürlich auch wie bei meinem ersten Vorschlag den Namen im Telefonbuch ändern, und statt den Produktname an Ende zu setzen, ihn an den Anfang. Hierbei musst Du nur beachten, dass wenn Du z.B. nur nach einem "X" an erste Stelle des Namens suchst, Du auch alle Kunden erwischst, deren Name selbst mit "X" anfängt. Etwas eindeutiger wäre z.B. "X " (X Leereichen).
     
    Im Variable auswerten Block müsstest Du dann
    Left(PBXCall.CallingPartyName, 2) = "X " eintragen.
     
  22. Tom Wellige's post in Wallboard Information was marked as the answer   
    I assume you refer to the Visual Groups wallboard (type: user infor).
     
    Here the blue dot shows the user who will receive the next call in the group. 
     
    See also here: https://help.enreach.com/visualgroups/1.10/web/Swyx/en-US/index.html#page/help/chap_VisualGroups_Wallboards.5.2.html - Wallboard Types.
     
  23. Tom Wellige's post in Email Versand löst das Senden von vielen Emails aus was marked as the answer   
    Wenn ich Dein Call Routing richtig verstehe, dann benutzt Du die 3 Bedingungsblöcke ohne dass Du da eine echte Bedingung eingetragen hast, sondern Du hast sie auf "In jeder Situation", "Für jeden ruf", "Zu jeder Zeit" konfiguriert. In diesem Fall kannst Du Dir diese Blöcke auch komplett sparen. Du musst eine Call Routing Regel die Du mit dem Regel Assistenten machst, nicht eins zu eins im GSE nachbilden.
     
    Dann sehe ich, dass Du beim "Durchstellen" Block alle anderen Ausgänge bis auf "Nicht zugestellt" ausgebelendet hast. Das solltest Du nicht tun, weil Dein Call Routing nun in Zustände laufen kann, welche nicht bearbeitet werden (z.B. "Verbunden"). Wenn es Dir ohnehin nur um den Versandt der EMail geht, dann brauchst Du den "Durchstellen" Block auch gar nicht.
     
    Damit die Alarmanlage nicht auf die Idee kommt mehrfach anzurufen (was in diesem Fall glaube ich Dein Problem ist, weil der Ruf nicht verbunden wurde), würde ich ein Call Routing wie folgt vorschlagen:
     
    "EMail versenden" Block um die benötigte EMail zu verschicken "Ansage abspielen" Block nehmen und eine Ansage abspielen. Damit verbindest Du den Ruf und teilst der Alarm Anlage damit mit, dass Du den Ruf empfangen hast  
     
  24. Tom Wellige's post in Falsches Lizenz Modell ausgewählt was nun? was marked as the answer   
    Schau mal ob Du eine Datei
     
    C:\ProgramData\Swyx\license.dat  
    findest. Wenn ja, lösche sie.
     
  25. Tom Wellige's post in Erweiterung der Persistent Variablen was marked as the answer   
    Da ich die kommenden Tage mit anderen Dingen komplett dicht bin, habe ich die Entscheidung gerade selber gertroffen (Variante 1 - NULL) und eine neue Version der Persistenten Variablen erstellt, die Deinen Feature Request enthält.
     
     
     

Important Information

By using this site, you agree to our Terms of Use and have taken note of our Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.